"""
函数封装步骤： 任何功能代码都可以封装函数。
1、第一步：先把功能代码写出来 【逻辑】
2、第二步： def，封装函数
3、第三步：参数化，变化的数据参数化 ：不是固定，用户输入的数据，从其他地方获取数据等
4、第四步：判断是否需要返回值，return定义返回值
  - 很多时候，print出来的东西都是可以定位返回值

封装完成之后 验证一下这个函数功能：main

"""
import allure
from openpyxl import load_workbook

@allure.step("读取excel表格")
def read_excel(filename,sheetname):
    wb = load_workbook(filename)
    sh = wb[sheetname]
    case_all = list(sh.values) # 列表嵌套元组的数据
    titile = case_all[0]
    list_case = []
    for case in case_all[1:]:
        data = dict(zip(titile,case))
        list_case.append(data)
    return list_case # 保存了所有用例的列表 返回值

# 调试代码  只需要在本模块使用，不希望导包后的模块 运行 --main运行
if __name__ == '__main__':
    from handle_path import case_path
    print(read_excel(case_path, "登录"))